<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>盒子模型-盒子尺寸(box model box sizing)</title>
  <!-- 
    CSS的盒子模型中，盒子尺寸（Box Sizing）是一个重要的属性，用于控制元素的尺寸计算方式。默认情况下，元素的宽度和高度是指内容框（content box）的尺寸，
    不包括内边距（padding）和边框（border）。通过设置盒子尺寸属性，可以改变元素尺寸的计算方式。
    以下是关于CSS盒子模型中盒子尺寸的主要要点： 
      
      1. 盒子尺寸属性（Box Sizing Property）：可以通过box-sizing属性来定义元素的盒子尺寸计算方式，常见的取值包括content-box（默认值，尺寸指内容框）、
         border-box（尺寸包括内边距和边框）。 

      2. content-box(默认值)：指定元素的宽度和高度仅包括内容框，不包括内边距和边框，内容框的尺寸为设置的宽度和高度。 
         - 设置一个元素的宽为 100px，那么这个元素的内容区会有 100px 宽，并且任何边框和内边距的宽度都会被增加到最后绘制出来的元素宽度中

      3. border-box：指定元素的宽度和高度包括内容框、内边距和边框的总和，内容框的尺寸会自动调整以适应内边距和边框。 
         - 设置的边框和内边距的值是包含在 width 内的。也就是说，如果你将一个元素的 width 设为 100px，那么这 100px 会包含它的 border 和 padding，
           内容区的实际宽度是 width 减去 (border + padding) 的值。大多数情况下，这使得我们更容易地设定一个元素的宽高
   -->
  <style>
    div {
      width: 100px;
      height: 100px;
      padding: 20px;
      border: 10px solid black;
    }

    .content-box {
      background-color: seagreen;
      box-sizing: content-box;
    }

    .border-box {
      box-sizing: border-box;
      background-color: skyblue;
    }
  </style>
</head>

<body>

  <div class="content-box"></div>

  <div class="border-box"></div>

</body>

</html>